As FIG. 1 illustrates, a mobile communication environment includes several different parties between which data is transferred. Terminals TE represent users of services. Services are provided by service providers SP and a network MNW, for instance a mobile network. The environment may also include content providers CP, the content provided by which is supplied to the terminals TE by the service providers SP or the network MNW. For example, for obtaining news, a short message is transmitted from the terminal TE to the mobile network MNW, which forwards it to a weather service provider SP. The service provider SP creates a multimedia message based on weather data obtained from a content provider CP providing weather forecasts. The mult-media message is forwarded to the mobile network MNW, which forwards it to the terminal TE. If no connection can be made to the mobile station TE, the mobile network can store the multimedia message in a message centre and transmit it immediately when the TE again connects to the network. The function of software components developed needs to be tested when new services are developed for the terminals TE, when new terminals TE or network elements are developed, and when new functions are developed for the terminals TE or the network elements.
Software components can be tested at the development stage in a software development environment, whereby no actual equipment is needed, but the testing can be performed fully by software by means of one computer, for example. Terminal emulators have been developed, which totally or partly model the operation of a terminal. The advantage of application development environments of this kind is that the applications do not have to be loaded in actual devices for testing the functioning of an application. An application development environment utilizing emulators is illustrated in U.S. published patent application no. 20020169591. A terminal emulator can be loaded in a software development environment and it can be used to test the operation of an application, e.g. for testing what a message transmitted by a service looks like in a terminal. Typically, special software development environments are tailored for different technologies, and it has been impossible to connect the environments to each other. For example, there are special software development environments for different communication applications, and special software development environments for Internet browser applications. Even though several different terminal emulators could be loaded in a software developent environment, the software component being developed has to be tested also in separate test processes for each terminal emulator. An example of this is that the application developer has to load an emulator separately for each telephone model and transmit the multimedia message created by the application separately to each of these emulators.